package com.fowo.api.model.inventory.report;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fowo.api.common.validator.*;
import io.swagger.v3.oas.annotations.media.Schema;
import javax.validation.constraints.*;
import lombok.Getter;
import lombok.Setter;

/**
 * 库存报表 预览导入辅助模型(全字段为文本类型)
 * @author yl_ls
 */
@Getter
@Setter
public class InventoryReportImportPo {

  /** 仓库 */
  @ExcelProperty("仓库")
  @Size(max = 50, message = "仓库长度不能超过50")
  private String stockIdName;

  @ExcelIgnore
  @Schema(title = "仓库")
  private String stockId;

  /** 产品 */
  @ExcelProperty("产品")
  @Size(max = 500, message = "产品长度不能超过500")
  private String itemIdName;

  @ExcelIgnore
  @Schema(title = "产品")
  private String itemId;

  /** 批次号 */
  @ExcelProperty("批次号")
  @Size(max = 50, message = "批次号长度不能超过50")
  private String batchNo;

  /** 库存数量 */
  @ExcelProperty("库存数量")
  @DecimalString(message = "库存数量小数格式不正确", label = "库存数量")
  private String stockQty;

  /** 库存金额 */
  @ExcelProperty("库存金额")
  @DecimalString(message = "库存金额小数格式不正确", label = "库存金额")
  private String stockAmount;

  /** 锁库数量 */
  @ExcelProperty("锁库数量")
  @DecimalString(message = "锁库数量小数格式不正确", label = "锁库数量")
  private String lockQty;

  /** 陈列数量 */
  @ExcelProperty("陈列数量")
  @DecimalString(message = "陈列数量小数格式不正确", label = "陈列数量")
  private String displayQty;

  /** 残次数量 */
  @ExcelProperty("残次数量")
  @DecimalString(message = "残次数量小数格式不正确", label = "残次数量")
  private String defectQty;

  /** 在途数量 */
  @ExcelProperty("在途数量")
  @DecimalString(message = "在途数量小数格式不正确", label = "在途数量")
  private String wayQty;
}
